package com.douglas.managesystem.dao;

import com.douglas.managesystem.entity.User;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;


/**
 * @author douglas
 */
//@Repository
public interface UserMapper {

    /**
     * 1.根据用户名查询用户
     * @param userName
     * @return
     */
    User getByUserName(String userName);

    /**
     * 2.分页查询用户
     * @param entity
     * @return
     */
    List<User> queryListByPage(Map<String, Object> entity);

    /**
     * 3.新增用户
     * @param user
     */
    void insert(User user);

    /**
     * 4.根据id查询用户
     * @param id
     * @return
     */
    User selectUserById(String id);

    /**
     * 5.更新用户信息
     * @param user
     */
    void updateUserById(User user);

    /**
     * 6.根据id删除用户信息
     * @param id
     */
    void deleteUserById(String id);

    /**
     * 7.根据用户名查询用户
     * @param username
     * @return
     */
    User selectUserByUsername(String username);

    /**
     * 8.根据用户名和角色类型查询用户
     * @param username
     * @param roleType
     * @return
     */
    User selectUserByUsernameAndRole(String username,String roleType);
}
